/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Queue;

/**
 *
 * @author Administrator
 */
public interface IQueue
{
    /**
	 * Inserts an item at the queue front.
	 * @param item data of type object
	 */
    public void enqueue(Object item);
    /**
	 * Removes the object at the queue rear and returns that object
		as the value of this function.
	 * @return data object
	 * @throws Exception
	 */
    public Object dequeue() throws Exception;
    /**
	 * Tests if this queue is empty
	 * @return result of type boolean
	 */
    public boolean isEmpty();
    /**
	 * Returns the number of elements in the queue
	 * @return queue size
	 */
    public int size();
}
